1. Field of the Invention
This invention relates to communication systems such as modems or transceivers and particularly to a hybrid modem or transceiver that modulates and/or demodulates a discrete multi-tone communication signal using both dedicated processing hardware and software executed by a host computer.
2. Description of Related Art
Emerging communication standards widely use multi-carrier modulation such as discrete multi-tone (DMT) modulation. For example, the ITU, ANSI, and ETSI have promulgated communication standards such as ADSL (Asymmetric Digital Subscriber Loop) or G.992.1 (G.dmt), and light rate ADSL or G.992.2 (G.lite), HDSL (High bit rate Digital Subscriber Loop), and VDSL (Very fast asymmetric Digital Subscriber Loop). Transceivers implementing these standards are sometimes referred to herein as xDSL transceivers. An article by J. C. Cioffi, entitled xe2x80x9cA Multi-Carrier Primerxe2x80x9d, ANSI T1E1.4/97-157, Boca Raton, Fla., pp. 91-157, November 1991, further describes examples of multi-carrier modulation methods and is hereby incorporated by reference in its entirety.
The xDSL transceivers and multi-carrier protocols use communication signals having a large bandwidth on copper wires (telephone lines) to deliver high data rates when compared to ISDN or voice band modems. The long copper wires between regional central offices and homes drastically attenuate the high-frequency components of the communication signals relative to the low-frequency components which complicates equalization of frequency components in large bandwidth signals received on telephone lines. This is one reason that traditional Quadrature Amplitude Modulation (QAM), used in V.32 and V.34 modems, or Pulse Amplitude Modulation (PAM), used in V.90 and ISDN, are not optimum modulation techniques for emerging large bandwidths communication protocols for copper wire. Instead, DMT modulation is the modulation of choice for various flavors of DSL (copper wire ) data communications protocols. With DMT modulation, the channel (full bandwidth) is broken up in to a series of N smaller sub-channels, typically 4 kHz in width. The attenuation within each sub-channel remains fairly constant, which facilitates equalization of the sub-channel. Accordingly, independent QAM processes can modulate data for transmission in parallel through the sub-channels. Since each sub-channel is independently modulated, the transport capacity of each sub-channel can be evaluated before assigning the appropriate information loads. This more effectively utilizes the full channel""s capacity and reduces the receiver""s processing burden.
QAM modulation of a sub-channel consists of assigning a two-dimensional symbol that is a member of a symbol set (or constellation). The two dimensions indicate the magnitude and phase of a signal (or equivalently the magnitudes of cosine and sine signals) having the frequency assigned to the sub-channel. The number of symbols in each symbol set depends on the number of bits of information assigned to each symbol in the symbol set. In turn, the number of bits per symbol for a sub-channel can be selected according to the capacity or impairment of the sub-channel on the transmission lines. A sub-channel with a high capacity is assigned a larger symbol set (i.e., more bits per symbol) to carry more information. Selecting a symbol for each sub-channel loads the N sub-channels, and then an Inverse Discrete Fourier Transform (IDFT) bundles the symbols into a time domain digital signal, called a DMT symbol. A digital-to-analog converter (DAC) converts the digital signal to an analog signal, and an amplifier (or line driver) boosts the analog signal for transmission via copper wires.
At the receiver, a Discrete Fourier Transform (DFT) decomposes the time domain signal into independent frequency coefficients. The magnitude and phase of each frequency coefficient indicate a QAM symbol for a corresponding sub-channel. The QAM symbols are independently extracted through equalization and slicing or quantization. For the demodulation, the receiver must know the constellation or number of bits per symbol for each sub-channel to covert each QAM symbol to data bits. After the converting the QAM symbols into their corresponding bits, the receiver assembles the bits by a parallel to serial conversion to properly order the transmitted series of bits.
The higher data rates of xDSL transceivers come at the expense of higher processing burdens. Accordingly, conventional implementations of xDSL transceivers are relatively expensive because of the amount or complexity of hardware required for the digital processing that performs modulation and demodulation. Software or host signal processing (HSP) modems eliminate the processing hardware in modems and instead use the processing power of a host computer. Accordingly, HSP modems can be much less expensive than hardware modems. However, for xDSL transceivers, the processing burden on the host processor is heavy so that execution of transceiver software significantly slows the host computer""s execution of other applications such as a browser that uses data from the transceiver. An xDSL transceiver is sought that avoids the high costs of conventional hardware transceivers without overly burdening a host processor.
In accordance with the invention, a hybrid modem or transceiver includes communication hardware that transforms time domain samples of a received signal to frequency domain coefficients. The communication hardware transfers the frequency domain coefficients to a host computer which executes receiver software to process the frequency domain coefficients to decode a received signal and extract data. The host computer also executes transmitter software to determine frequency domain information corresponding to a transmitted signal. The transmitter software transfers the frequency domain information to the communication hardware which converts the frequency domain information to time domain samples of the transmitted signal. The communication hardware, which performs discrete Fourier transforms and inverse discrete Fourier transform that convert information between the time and frequency domains, reduces the processing burden on the host computer when compared to conventional software transceivers but does not have the high hardware costs associated with conventional hardware transceivers.
In accordance with one embodiment of the invention, a hybrid transceiver includes receiver hardware coupled to receive time domain samples of a received signal from the communication channel such as can be established on conducting telephone lines. The receiver hardware transforms the samples to generate frequency domain information for a portion of the received signal and transfers the frequency domain information to a host computer for further processing. For example, when the received signal is in compliance with a discrete multi-tone (DMT) protocol, the receiver hardware partially decodes the received signal by determining Fourier coefficients corresponding to sub-channels defined by the DMT protocol, and a program executed by the host computer completes decoding of the received signal. Additional hardware for the hybrid transceiver typically includes transmitter hardware coupled to receive from the host computer, frequency domain coefficients of a transmitted signal. The transmitter hardware transforms the frequency domain coefficients of the transmitted signal to time domain samples of the transmitted signal.
Communication software in the hybrid transceiver includes the procedure that the host computer executes to complete decoding of the received signal. The communication software also partially encodes the transmitted signal by converting data to be transmitted into the frequency domain coefficients or information for the transmitted signal. The communication software sends frequency domain information to the transmitter hardware which converts the frequency domain information to the time domain.
In one embodiment, the receiver hardware includes a fast Fourier transform engine that converts a set of time domain samples corresponding to a DMT symbol to a set of frequency domain coefficients corresponding to the DMT symbol. Each coefficient corresponds to a sub-channel defined by a DMT protocol. The receiver hardware may further include an equalizer that performs a filter operation on the time domain samples before the conversion from the time domain to the frequency domain.
In one embodiment of the software, a receiver portion of the transceiver software implements a slicer, a deframer, and a decoder, and a higher layer (network layer) protocol interface. The slicer compares each frequency domain coefficient to a constellation for a sub-channel corresponding to the coefficient and identifies a symbol in the constellation. The deframer converts each symbol that the slicer identifies to a set of bits corresponding to the symbol and orders the sets of bits to form a data stream. The decoder performs error detection and error correction on the data stream. The higher layer protocol interface implements a protocol such ATM or STM for transferring data to and from the hybrid transceiver. To further reduce the processing burden on the host computer, alternative embodiments of the invention implement the slicer or other portions of the transceiver software in hardware. An optimal division between transceiver hardware and software depends on the power of the host processor and the complexity of the protocols implemented.
An embodiment of the transmitter hardware includes a command interpreter and inverse Fourier transform engine. The command interpreter interprets software commands for operation of the inverse Fourier transform engine and an interface to the communication channel. To reduce gate count and simplify operation, the inverse Fourier transform engine may implement an inverse discrete Fourier transform rather than an inverse fast Fourier transform.
In one embodiment of the transceiver software, a transmitter portion of the transceiver software includes an error correction encoder, a framer, a constellation encoder, and a scaler. The error correction encoder attaches redundant bits to the data to generate an input bit stream that would enable a receiver to detect and correct the original data bits when channel anomalies corrupt the data. The framer separates the input bit stream into sets of bits that are assigned to the sub-channels according to the implemented DMT protocol and the allowed loading of each sub-channel. The constellation encoder identifies a symbol corresponding to each bit set, this may involve adding more redundant bits to each set to improve the noise immunity of the data (trellis encoding), and the scaler scales the symbols according to the properties of the communication channel. As with the receiver software, alternative embodiments of the hybrid transceiver implement processing blocks such as the scaler and the constellation encoder in hardware to reduce the burden on the host processor.